今天,是鐵人賽第十七天。
小編,花了一個上午,去買早餐順便抓寶。
就不小心,現在才要做正事。
泡杯咖啡,我們趕緊來看看...
昨天,我們已經簡單的學會了,如何在node.js串接MS-SQL。
而在 Node.js 較常用的 MongoDB,如何做呢?
我們會在今天會先講述如何安裝 MongoDB及設定服務,明天,將會 做node.js的串接與 CURD 簡單的介紹。
讓大家初入門,對 MongoDB在 Node.js的應用之下更得心應手!
1.它是10gen 開發的NoSQL (Not only SQL-不只有SQL)
2.不是關聯式資料庫,沒有 Schema (天啊…)
3.它是用來處理巨量資料的資料庫,這個資料庫是以文件導向儲存(Document Oriented Storage
)的資料庫,以key:value
表示, 儲存格式與JSON完全一樣。
1.提供豐富的查詢
2.容易向外擴展
3.沒有複雜的關聯
4.使用內部記憶體儲存工作集,進而實現更快的數據訪問
5.單一物件結構清楚
6.不需要應用程式與資料庫物件之間的轉換與對應
1.Big Data
2.資料採礦
3.手機及社交平台
4.使用者資料管理
5.資料中心
接下來,有一些MongoDB的術語,與我們過去關聯式資料庫所用的名詞,對照一下:
RDBMS | MongoDB |
---|---|
Database | Database |
Table | Collection |
Tuple/Row | Document |
column | Field |
Table Join | Embedded Documents |
Primary Key | Primary Key (如果沒有設定,mongodb會自動給予 預設主鍵值 _id 欄位) |
在安裝前,我們先來確認windows 版本。
在 command prompt 輸入,並執行:
C:\> wmic os get osarchitecture
OSArchitecture 64-bit <--顯示出所用的OS是哪一種結構。
接著,我們去 MongoDB Downlad Center 下載所需套件:
小編選擇企業版。
下載後,可以參考 Install on Windows 我們就依此文件,做以下的操作:
Step1.
Step2.
Step3. 可以選Custom安裝,這裡就可以設定安裝的路徑。
Step4. 系統預設是安裝在 C:\Program Files\MongoDB\Server\3.2\
那我們這裡就依照官方的,不改。
Step5.
Step6. 完成
因為,MongoDB 預設資料庫存放位置是 \data\db,所以,我們可以建立這樣的資料庫路徑:
在 D:\ 以Command pormpt 執行 D:\>md \MongoDB\data\mydb
新增三層資料夾,如圖:
接著我們在command prompt 要想進入到C:\Program Files\MongoDB\Server\3.2\bin
執行
D:>cd "C:\Program Files\MongoDB\Server\3.2\bin"
目前,我們位在
C:\Program Files\MongoDB\Server\3.2\bin>
在 > 後面輸入mongod --dbpath d:\MongoDB\data\db
啟動同時,指定資料庫存放位置!
如圖:
接著,出現像這樣的畫面,表示MongoDB已經正常啟動了!!!!!
你就可以開始使用了!!!
可以參考一些文件 Getting Started 來做測試。
Note. 關於資料庫存放位置,其實可以自己設定好一個資料夾位置,指定過去就好囉!!!不限於一定得在 \data\db 之下!!!!
1.資料庫啟動以後,我們開啟另一個 command prompt 執行
C:\Program Files\MongoDB\Server\3.2\bin\mongo.exe (.exe可以不用)
啟動MongoDB Shell 環境,如圖:
當我們看到 connecting to: test. Welcome to the MongoDB shello
, 代表連線MongoDB成功!
2.我們可以做一些簡單的查詢,比方 show dbs
可以看到底下有哪些資料庫。
要使用資料庫test,可以用 use test
如圖:
3.如何關閉資料庫
離開shell,使用exit
關閉資料庫,中斷連線,在admin
資料庫下,使用 db.shutdownServer()
4.查詢指令使用,好用的"help"
如果,我們想要將操作MongoDB的記錄,寫進log裡。
我們先建立一個放置log的資料夾,為了有規律的放置檔案
d:\MongoDB\data\db 放置database
d:\MongoDB\data\log 放置log
所以,建立一個資料夾log
d:\MongoDB\data> mkdir log
接著,我們要建立一個config檔案
,它是 MongoDB 的配置檔,內容可以配置db路徑
(storage.dbPath)及log寫入檔案
( systemLog.path )。
C:\Program Files\MongoDB\Server\3.2\mongod.cfg
內容如下
mongod.cfg
systemLog:
destination: file
path: d:\MongoDB\data\log\mongod.log
storage:
dbPath: d:\MongoDB\data\db
接著,我們以系統管理員身份
啟動command prompt
cd "c:\Program Files\MongoDB\Server\3.2\bin"
c:\Program Files\MongoDB\Server\3.2\bin> mongod.exe --config "D:\MongoDB\data\mon god.cfg" --install
接著,我們就可以直接在任意位置,以簡單的方式,啟用服務,而不用每次啟動,都要指向資料庫位置。不再用 mongod –dbpath d:\MongoDB\data\db 這一長串東西。
啟用服務:
net start MongoDB
停用服務:
net stop MongoDB
如圖:
而每執行服務,都會寫一次log 檔,在我們當初配置的資料夾。
接下來,我們來看看一個tricky的東西。雖然,我們已經寫好配置檔,並且,可以在任意地方啟動 mongod 的服務,但是,如果要執行 MongoDB Shell,還是得回到 bin 底下。
如圖,d:> 根本沒有執行檔。
所以,我們要用設定“環境變數"
的方式,去執行mongodb,會更方便!
Step1. 右下角開始選單/右鍵/控制台
Step2. 系統及安全性
Step3. 系統
Step4. 在 右下角 “變更設定" (咦? 置人性行銷??? 誤!!)
Step5. 進階/環境變數
Step6. 系統變數的Path,編輯
Step7. 將 ;C:\Program Files\MongoDB\Server\3.2\bin\
加入原本字串後方!!
最後,可以在任意地方,啟動你的MongoDB, 及 MongoDB Shell
有安裝服務,就也有移除服務,如果,你決定要移除 mongodb 服務
可以在command prompt 執行
"C:\Program Files\MongoDB\Server\3.2\bin\mongod.exe" --remove
請問在安裝途中...出現這個要怎麼處理
我沒碰到過, 不過, 可以google看看喔, 試試這?
https://teamtreehouse.com/community/access-control-for-mongodb
感謝 我來看一下
大大您好~非常感謝您這篇的教學~但有一個問題請教
我想在別台電腦登入我這台的mongodb要怎麼做呢~
我找了網路上好多教學一直不成功
有人說如果mongodb有正常啟動,在網址列輸入localhost:27017就會顯示登入訊息
但我一直出現"無法連上這個網站" (我用studio 3t是可以正常使用的)
我有去修改mongod.cfg把bindIp改為0.0.0.0但似乎沒甚麼用~~~